package com.huanglj.taobaounion.utils;

import com.huanglj.taobaounion.presenter.ICategoriesPagerPresenter;
import com.huanglj.taobaounion.presenter.IHomePresenter;
import com.huanglj.taobaounion.presenter.IOnSellPagePresenter;
import com.huanglj.taobaounion.presenter.ISearchPresenter;
import com.huanglj.taobaounion.presenter.ISelectedPagePresenter;
import com.huanglj.taobaounion.presenter.ITicketPresenter;
import com.huanglj.taobaounion.presenter.implement.HomePresenterImpl;
import com.huanglj.taobaounion.presenter.implement.HomePagerPresenterImpl;
import com.huanglj.taobaounion.presenter.implement.OnSellPresenterImpl;
import com.huanglj.taobaounion.presenter.implement.SearchPresenterImpl;
import com.huanglj.taobaounion.presenter.implement.SelectedPagePresenterImpl;
import com.huanglj.taobaounion.presenter.implement.TicketPresenterImpl;

public class PresenterManager {
    private static final PresenterManager ourInstance = new PresenterManager();
    private final ICategoriesPagerPresenter mHomePagerPresenter;
    private final ITicketPresenter mTicketPresenter;
    private final IHomePresenter mHomePresenter;
    private final SelectedPagePresenterImpl mSelectedPagePresenter;
    private final OnSellPresenterImpl mOnSellPresenter;
    private final SearchPresenterImpl mSearchPresenter;

    public static PresenterManager getInstance() {
        return ourInstance;
    }

    private PresenterManager() {
        mHomePagerPresenter = new HomePagerPresenterImpl();
        mTicketPresenter = new TicketPresenterImpl();
        mHomePresenter = new HomePresenterImpl();
        mSelectedPagePresenter = new SelectedPagePresenterImpl();
        mOnSellPresenter = new OnSellPresenterImpl();
        mSearchPresenter = new SearchPresenterImpl();
    }

    public ICategoriesPagerPresenter getHomePagerPresenter() {
        return mHomePagerPresenter;
    }

    public ITicketPresenter getTicketPresenter() {
        return mTicketPresenter;
    }

    public IHomePresenter getHomePresenter() {
        return mHomePresenter;
    }

    public ISelectedPagePresenter getSelectPagePresenter(){return mSelectedPagePresenter;}

    public IOnSellPagePresenter getOnSellPresenter() {
        return mOnSellPresenter;
    }

    public ISearchPresenter getSearchPresenter(){return mSearchPresenter;}
}
